Enviado por: MaKa
Fecha: 1078089266
Actualizado: 1078594586
¿Usa base de datos?: 1
Visitas: 562
Votos: 0
Descargado: 17 veces
Valoración: 0.00
» Valora este script «
ZipDescargar

Esto es un MOD de la Lista de correo V1.0
http://electros.iefactory.com/?ver=scripts&s=113

Sus mejoras:
-Permite enviar código en HTML.
-Envia la lista solo a usuarios que estén subscritos a la lista.

Instalación:

[b]1º:[/b] Modificar la tabla de usuarios:
ALTER TABLE usuarios ADD lista ENUM( '0', '1' ) DEFAULT '1' NOT NULL  ;

por defecto quedaran todos usuarios con la lista activada

[b]2º:[/b] Poner este código en el uperfil en la parte q se muestran los datos a modificar, para q el usuario pueda seleccionar si desea recibir los emails o no.

<? if($datos[lista] == 1) { $lista = " selected" ; } ?>

<b>Recibir novedades por email:</b><br>
<select name="lista" class="form">
<option value="0">No
<option value="1"<?=$lista?>>Si
</select>


y ahora el codigo del script (guardarlo en un archivo llamado [b]email_general.php[/b]):
<script>
function valida() {
if(formulario.mensaje.value == '') { alert('Tienes que poner un email valido.') ; return false ; }
if(formulario.asunto.value == '') { alert('El asunto no puede estar vacío.') ; return false ; }
if(formulario.remite.value == '') { alert('El mensaje no puede estar vacío.') ; return false ; }
}
</script>

<?
// MOD por "MaKa" http://manuel.freedatos.com para la web de Electros.

include("config.php") ;
if($enviar) {
$query = "select email,nick from usuarios where lista like '1' order by id" ;
$resp = mysql_query($query);
$totales = mysql_num_rows($resp) ;
$i = 0 ; $j = 0 ;
echo "Lista de mensajes enviados.";

while ($datos = mysql_fetch_array($resp)) {
$email = $datos[email] ;
$nick = $datos[nick] ;
$mensajeb = str_replace("[nick]",$nick,$mensaje) ;

$bien = mail($email,$asunto,$mensajeb,"Content-Type:text/html; charset=iso-8859-15, From: $remite\r\nReply-To: $remite\r\n");
$i++ ;

echo "<br>$i - ";
if($bien){
echo "Mensaje para: $nick ($email): <b>OK</b>";
} else {
echo "<font color=#FF0000><b>Mensaje fallido para: $nick ($email)</b></font>";
o$j++ ;
}
}
$k = $i - $j ;
echo "<br><br>Enviados: $k de $totales <br><hr>" ;
if($i == $totales) {
echo "<b>Mensaje enviado:</b><br> $mensaje<br><hr> <br>Se ha completado el envío de los mensajes<br>
Total enviados: <b>$i</b><br><br>
<a href=javascript:history.back()>Volver a enviar otro mensaje</a><br>
<a href=\"index.php\">Volver a la página principal</a>
";
}
mysql_free_result($resp) ;
mysql_close($conectar) ;
}

else {
?>
<form action="email_general.php" method="post" name="formulario" onSubmit="return valida()">
<blockquote>
Remitente:<br> <input name="remite" type="text" value="Aqui Tu email"><br><br>
Asunto:<br> <input name="asunto" type="text"><br><br>
Mensaje:<br> <textarea name="mensaje" cols="40" rows="5"></textarea><br><br>
<input name="enviar" type="submit" value="Enviar">
</blockquote>
</form>
Puedes usar [nick] para personalizar el mensaje. ej: Hola [nick]...
<? } ?>


Y ya está ;)